home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Whiteline: delta
/
whiteline CD Series - delta.iso
/
progtool
/
modula2
/
m2d2
/
m2d2.txt
< prev
Wrap
Text File
|
1995-11-25
|
26KB
|
623 lines
M2D2, die andere Shell für Modula-2/ST
======================================
Developed using Modula-2/ST 0272-742796(UK), (214)340-4942(USA)
PSB * Pentagramm Software Braunschweig * Thomas Birke & Hinnerk Rümenapf
Allgemeines
===========
Sämtliche Rechte an den vorliegenden Programmen liegen bei den Autoren:
Thomas Birke Hinnerk Rümenapf
birke@bii.bessy.de und Ottweilerstr. 18
38116 Braunschweig
Die Programme sind nach bestem Wissen und Gewissen getestet und für gut
befunden. Ich übernehme jedoch keine Gewähr für die Fehlerfreiheit,
der Software, und bin insbesondere nicht haftbar für eventuelle Schäden
oder Datenverluste, die durch die Programme verursacht wurden.
Sollten Sie einen (oder gar mehrere ?) Fehler finden wäre ich dankbar,
wenn sie mir eine möglichst genaue Beschreibung, wie es zu dem Fehler kam,
einschließlich einer Beschreibung Ihrer Hardware (Rechner, RAM, TOS, ...),
zukommen lassen würden.
Das System besteht aus den folgenden Dateien:
M2D2.PRG die eigentliche Shell
M2D2.RSC die zugehörige Resource-Datei
M2D2.INF ASCII-Datei mit den Parametern der Shell
DRUCKER.PR1 Druckeranpassung (mit ANPEDIT.PRG editierbar)
M2OPTION.ACC neues Options-Accessory (kürzer, dafür aber besser als
das Alte)
M2PATHS.TXT eine zum Original M2OPTION.ACC kompatible Parameterdatei
ANPEDIT.PRG ein Programm zum Ändern der Druckeranpassungen
ANPEDIT.RSC zugehörige Resource-Datei
*.PR1 Druckeranpassungen, die mit ANPEDIT.PRG editierbar sind.
Intention
=========
Die Idee für M2D2, entstand daraus, daß die von TDI-Software Ltd.
mitgelieferte Shell zwar benutzbar ist, aber für größere Projekte nur ein
mangelhaftes Werkzeug darstellt. Da wäre zum ersten das Manko, daß auf einen
Blick nur fünf Module sichtbar sind, was bei größeren Projekten zuwenig ist.
Außerdem werden die Abhängigkeiten der Module untereinander völlig mißachtet.
Desweiteren wäre da die kaum brauchbare Möglichkeit andere Programme
aus der Shell heraus aufzurufen.
Diese Liste ließe sich noch weiter fortsetzen, was aber nicht meine
Absicht ist. Ich zähle lieber einige Möglichkeiten von M2D2 auf.
- vollständige Überwachung der Abhängigkeiten der Module im
Arbeitsverzeichnis mit automatischer Compilierung nicht-aktueller Module
(für diejenigen, die die sog. höhere Programmiersprache C kennen also ein
integriertes, vollautomatisches MAKE)
- Kommunikation mit zugehörigem neuen Accessory M2OPTION.ACC
- komfortable Möglichkeit Module auszudrucken
- Pfade und Programmnamen von Editor, Compiler, Linker, usw. frei bestimmbar
- zehn Module gleichzeitig auf dem Desktop sichtbar
- ...
Installation
============
Der eigentliche Kern der Shell besteht aus dem Programm M2D2.PRG mit seiner
Resource-Datei M2D2.RSC, der Parameterdatei M2D2.INF und einer
Druckeranpassung DRUCKER.PR1.
Kopieren Sie nun die eben genannten Dateien an die Stelle, an der Sie die
Shell haben wollen, und ersetzen Sie außerdem das alte Options-Accessory
M2OPTION.ACC durch das gleichnamige, leistungsfähigere aber kürzere
aus dem M2D2-System. Sie können auch weiterhin das alte Accessory benutzen,
denn die beiden sind vollständig kompatibel. Sie müssen dann aber auf einige
Arbeitserleichterungen durch M2D2 verzichten.
Hier eine kurze Anleitung um zu einer sicheren Installation zu kommen:
- starten Sie M2D2.PRG
- lokalisieren Sie die durch Icons am linken Bildschirmrand dargestellten
Programme (von oben: Editor, Compiler, Linker, Debugger, RCS und
Kommando-Interpreter) durch Doppelklick auf das jeweilige Icon und Auswahl
des Programms in einem Datei-Auswahl-Dialog.
- wählen Sie im Menü Parameter den Menüpunkt Shell ,
klicken auf den Knopf Editor bekommt keine Fehlerdatei , und beenden
Sie den Dialog mit OK
- wählen Sie im Menü Parameter den Menüpunkt speichern
Das System müsste mit allen Modula-2/ST-Releases ab Rel. 2.00a lauffähig
sein, insbesondere wurde es mit Rel. 3.01a entickelt und getestet. Bei
Unverträglichkeiten mit anden Releases bitte ich, mich zu unterrichten.
Außerdem wurde M2D2 auf folgenden TOS-Versionen getestet, und für lauffähig
befunden:
TOS 1.0 6.02.86
TOS 1.2 vom 22.04.87
TOS 1.4 6.04.89
KAOS 1.4.2 30.12.90
Bedienung des M2D2-Desktop
==========================
Die Bedienung von M2D2 ist bewußt an die Bedienung der Original-Shell
M2DESK.PRG angelehnt, aber weitaus komfortabler.
Am linken Rand des Desktops finden Sie eine Reihe von Knöpfen untereinander
angeordnet, die wie im Original den Zugriff auf die Tools Editor, Compiler,
Linker, Debugger, Resource-Construction-Set, Kommando-Interpreter und
jedes beliebige andere Programm (zweiter von oben, bis nach unten) bieten.
Durch einfaches Anklicken eines Knopfes wird das jeweilige Programm
aufgerufen. Durch Anklicken des unteren Knopfes kann in einem
Datei-Auswahl-Dialog ein beliebiges Programm ausgewählt und gestartet werden,
für das außerdem auch noch eine Parameterzeile angegeben werden kann.
Ein Doppelklick auf einen der Knöpfe (bis auf den oberen und den unteren)
öffnet einen Datei-Auswahl-Dialog, in dem das jeweilige Programm lokalisiert
werden kann.
Damit sind Zugriffdpfad und Name der Programme beliebig einstellbar (das
schafft mehr Ordnung auf Festplatten oder Disketten).
Der oberste Knopf gibt die Möglichkeit im Arbeitsverzeichnis ein
neues Modul zu erzeugen. Es wird automatisch ein Rahmen für eine gültige
Modula-2-Datei geschrieben, und aus dem Modulnamen ein Dateiname erzeugt.
Falls das zu erzeugende Modul schon existiert gibt M2D2 eine entsprechende
Fehlermeldung aus.
Wenn zu einem zu erzeugenden .MOD schon ein .DEF existiert,
wird das .MOD automatisch ein IMPLEMENTATION MODULE.
Schwierigkeiten kann es geben, falls die Modulnamen sich in
Groß/Kleinschreibung oder nach dem achten Zeichen unterscheiden.
Die Dateien bekommen dann den gleichen (Vor)Namen, gehören aber für den
Compiler zu verschiedenen Modulen (`incorrect module name' ist noch die
harmlosere Fehlermeldung).
In der Mitte des Desktops befindet sich das Fenster mit dem
Arbeitsverzeichnis Arbeitsverzeichnis. Im Fenster werden die Module,
die sich im aktuellen
Arbeitspfad befinden angezeigt (sowie wenigstens eine Datei XXX.DEF
oder XXX.MOD vorhanden ist). Das Fenster ist weder verschiebbar noch
in der Größe veränderlich (um ehrlich zu sein, ist es noch nicht einmal ein
echtes Fenster, sondern es tut nur so). Im Fenster-Titel wird der aktuell
eingestellte Arbeitspfad angezeigt. Ein Einfachklick auf den Fenster-Titel
erfragt beim M2Options-Accessory erneut den Arbeitspfad, und reagiert,
falls nötig, darauf. Durch einen Doppelklick auf den Fenster-Titel bekommt
man die Möglichkeit, den Arbeitspfad mit einem Datei-Auswahl-Dialog zu
bestimmen. Falls das von *PSB mitgelieferte M2Options-Accessory installiert
ist wird ein neu eingestellter Arbeitspfad automatisch auch in diesem
gesetzt und ist damit global auch Compiler und Linker bekannt.
Beim Original-Accessory ist das leider nicht möglich, weshalb es
dann zu Schwierigkeiten mit Compiler und Linker kommen kann ("`Can't find
..."').
Falls sich im Arbeitsverzeichnis mehr als zehn Module befinden, kann der
senkrechte Rollbalken benutzt werden, um an nicht sichtbare Module zu
gelangen. Die Bedienung des Rollbalkens entspricht der Bedienung
der GEM-Fenster.
Jedes gefundene Modul wird im Fenster wird durch eine Zeile dargestellt,
wobei in der Zeile die gefundenen Dateien vermerkt sind.
Kürzel Datei einfacher Mausklick startet
--------------------------------------------------------------------------
DEF Definitions-Modul Editor
ERD Fehler-Datei Editor
MOD (Implementations-)Modul Editor
ERM Fehler-Datei Editor
SYM übersetztes DEF Compiler
LNK übersetztes MOD Compiler
PRG gebundenes Programm Linker (Doppelklick startet das Programm)
RSC Resource-Datei RCS
Auf der rechten Seite des Desktops befindet sich oben ein kleines
Informations-Fenster, in dem zum einen der noch verbleibende
Hauptspeicher, und zum anderen die Anzahl der im Arbeitsverzeichnis
befindlichen Module angezeigt wird.
Darunter befinden sich zwei Icons:
- Drucker
Durch `ziehen' eines Moduls (also eines Knopfes mit
Inschrift DEF, MOD, ERD oder ERM auf dieses Icon, kann dieses Modul (nach
Rückfrage) ausgedruckt werden.
- Abfall
Durch `ziehen' einer Datei (DEF, MOD, ERD, ERM, SYM, LNK,
PRG oder RSC) auf dieses Icon, kann diese Datei (nach Rückfrage) gelöscht
werden. Wird ein Modulname auf dieses Icon gezogen, werden (nach Rückfrage)
alle Dateien mit diesem Namen gelöscht (DATEI.*).
Wenn beim Start eines Programmes eine der [shift]-Tasten gedrückt wird,
wird von M2D2 automatisch eine Stopuhr gestartet, und die für den
Programmlauf benötigte Zeit gemessen.
Wird bei gedrückter [control]-Taste auf eine Datei im Arbeitsverzeichnis
geklickt, wird deren Dateidatum und -uhrzeit auf das aktuelle Systemdatum
und -uhrzeit gesetzt (unter UNIX als `touch' bekannt). Damit kann z.B. der
Status `ungültig' einer Datei zurückgesetzt werden.
Für die meisten Funktionen gibt es auch die Möglichkeit des Aufrufs über
die Tastatur (s. Anhang).
Die M2D2-Menü-Zeile
===================
Das Menü von M2D2 enthält nur einige wenige Menü-Punkte, da fast alle
Funktionen direkt auf dem Desktop ausgeführt werden können.
Menü: Parameter
---------------
Shell...
Vor Ihnen öffnet sich eine Dialogbox, in der einige wenige Einstellungen
vorgenommen werden können.
Zum einen können Pfade und Namen der sechs Haupt-Tools (Editor, Compiler,
Linker, Debugger, RCS und Kommando-Interpreter) von Hand eingetragen bzw.
nachgebessert werden.
Die Original TDI-Programme haben einen kleinen Fehler in der Auswertung der
übergebenen Parameter. Für Editor, Compiler und Linker kann M2D2 diesen
Fehler berücksichtigen, wenn Sie das entsprechende Feld vor dem Zugriffspfad
anwählen. Kurz: Bei TDI-Programmen Kreuzchen vor dem Zugriffspfad, bei allen
anderen nicht.
Des weiteren können Flags gesetzt werden, die das Zusammenspiel Ihres Editors
mit der Shell regeln.
Editor nach Compiler-Fehler
Mit diesem wird festgelegt, ob nach einem Übersetzungsfehler automatisch
der Editor mit dem fehlerhaften Modul aufgerufen wird. Ein Übersetzungs-
fehler ist aufgetreten, wenn eine vom Compiler erzeugte Fehlerdatei
existiert oder die Datei, die der Compiler erzeugen sollte, nicht
vorhanden ist.
Des weiteren ist genau eines der nächsten drei Flags gesetzt:
Editor ohne Fehlerdatei
Editor mit Fehlerdatei
Editor mit Fehlerdatei und ersten Fehler
Sie legen fest, was dem Editor außer dem Namen des defekten Moduls
übergeben wird. Es gibt die Möglichkeiten, nichts weiter, den Namen der
Fehlerdatei oder den Namen der Fehlerdatei und Zeile und Spalte des ersten
Fehlers zu übergeben.
Welches dieser drei Flags Sie setzen sollten, hängt von dem von Ihnen
verwendeten Editor ab. Für den Original-Editor des Modula-2/ST-Paketes
sollte das Flag 'Editor bekommt keine Fehlerdatei' gesetzt werden, da
dieser Editor die Fehlerdatei selbständig verwaltet. Falls Sie den
Tempus-Editor verwenden können Sie das Flag 'Editor bekommt Fehlerdatei
und ersten Fehler' setzen. Tempus setzt den Cursor im Fehlerhaften Modul
dann an die Stelle an der der erste Fehler gefunden wurde. Ich kann hier
natürlich nicht alle existierenden Editoren aufzählen, Sie müssen also
eventuell selbst ausprobieren, welches Flag für Ihren Editor die optimale
Einstellung ist.
Batch nach Fehlern, wenn möglich, weiterbearbeiten.
Ist dieses Feld angewählt wird beim Übersetzen größerer Projekte soweit
wie möglich weitergearbeitet.
Sonst wird beim ersten Fehler abgebrochen.
Drucker...
Öffnet die Dialogbox zum Einstellen der Druckerparameter. Sie wird im
Abschnitt `Ausdrucken von Quelltexten' beschrieben.
laden
lädt die Datei M2D2.INF neu, und übernimmt aus ihr die Einstellung der
Parameter.
speichern
speichert die eingestellten Parameter in der Datei M2D2.INF
Ende
beendet M2D2 ohne Rückfrage.
Menü: Abhängigkeiten
--------------------
M2D2 ist in der Lage die Beziehungen (Abhängigkeiten) zwischen den Modulen
im Arbeitsverzeichnis zu überprüfen und zu verwalten. So könnten sich zum
Beispiel im Arbeitsverzeichnis die beiden Module Test und
SubTest befinden, die im groben folgenden Aufbau haben:
DEFINITION MODULE SubTest;
PROCEDURE anything;
END SubTest.
IMPLEMENTATION MODULE SubTest;
PROCEDURE anything;
BEGIN
...
END anything;
END SubTest.
MODULE Test;
FROM SubTest IMPORT anything;
BEGIN
anything
END Test.
Für Modula-2 ist das Modul Test abhängig vom Modul SubTest .
Wenn also in SUBTEST.MOD Änderungen vorgenommen werden, muß es neu
übersetzt werden, und damit hat sich auch SUBTEST.LNK geändert. Also muß
TEST.LNK neu gelinkt werden, um die Änderungen aus SUBTEST.MOD auch im
endgültigen Programm TEST.PRG zu aktualisieren.
Beim M2DESK.PRG des Modula-2/ST-Paketes war diese Überwachung bei größeren
Projekten mit mehreren Modulen eine Heidenarbeit, die Ihnen jetzt von M2D2
abgenommen werden kann.
Die automatische Versions-Überwachung ist in dieser Version auf das
Arbeitsverzeichnis beschränkt. Liegen also Test und SubTest in
verschiedenen Verzeichnissen, müssen Sie wieder selbst Hand anlegen.
Es bietet sich sowieso an, die Dateien eines Projektes in einem Ordner
Zusammenzufassen.
Die Abhängigkeiten `merkt' sich M2D2 in einer Datei DEPEND.M2B
im entsprechenden Arbeitsverzeichnis. Diese Datei ist eine ASCII-Datei, und
kann mit jedem Editor angesehen und bearbeitet werden.
Mit der Funktion `bestimmen' aus dem Menü 'Abhängigkeiten' wird diese Datei
automatisch erzeugt (für das aktuelle Arbeitsverzeichnis). Wenn sich die
Abhängigkeiten ändern, müssen Sie sie von M2D2 erneut bestimmen lassen
(s.u.).
Eine Datei, die neu übersetzt oder gelinkt werden muß, weil sich eine
untergeordnete Datei geändert hat, wird `grau' dargestellt.
Eine Datei, die `grau' dargestellt ist, oder gar nicht vorhanden ist wird
`ungültig' genannt.
Ob eine Datei gültig ist wird anhand des Dateidatums und der
Dateizeit überwacht. Es ist daher UNBEDINGT ERFORDERLICH das Datum und
Uhrzeit IMMER korrekt gesezt werden.
Zu diesem Zwecke gibt es eingebaute, nachrüstbare oder ansteckbare
Hardwareuhren bzw. Autoordner-Programme oder Accessories, die das Stellen
der Systemzeit übernehmen.
bestimmen
Für das aktuelle Arbeitsverzeichnis wird eine Datei DEPEND.M2B
erzeugt, in der die Abhängigkeiten der im Arbeitsverzeichnis befindlichen
Module vermerkt sind. Dazu wird jede Datei nach Importen durchsucht und
diejenigen Importe, die sich wieder auf das Arbeitsverzeichnis beziehen,
werden in die Datei DEPEND.M2B geschrieben.
Wenn sich die Abhängigkeiten ändern rufen Sie diese Funktion erneut auf.
ungültige übersetzen
Alle Dateien .SYM oder .LNK, die ungültig (also `grau' oder
nicht vorhanden) sind, werden neu übersetzt. Dabei wird automatisch auf
die richtige Reihenfolge geachtet. Die Abhängigkeiten müssen vorher bestimmt
worden sein (siehe oben).
vollst. Importlisten
Aus allen Modulen im aktuellen Arbeitsverzeichnis werden die Namen der Module
aus denen importiert wird in eine Datei GLOBAL.M2B geschrieben.
Zu Dokumentationszwecken hat man damit eine einfache Möglichkeit Importlisten
zu erstellen und weiterzuverarbeiten.
Editieren, Compilieren und Linken
=================================
Durch Maus-Klick auf die verschiedenen Dateien können Editor, Compiler oder
Linker aufgerufen werden. Der Programmaufruf wird durch Maus-Klick auf die
entsprechende Endung gestartet.
DEF, MOD Der Editor wird mit der entsprechenden Datei aufgerufen.
SYM, LNK Der Compiler wird aufgerufen, um die entsprechende Datei zu
erzeugen (auch wenn das Feld leer ist, die Datei also noch
nicht existiert)
PRG Einfach-Klick: Der Linker wird aufgerufen, eine neue
Programmdatei erzeugt.
Doppel-Klick : Das Programm wird (wenn vorhanden) gestartet
RSC Das in den Parametern eingestellte Resource-Construction-Set
wird gestartet und bekommt den Namen der Resource-Datei
übergeben.
normale Arbeitszyklen
Zunächst wird im Editor ein Quelltext erstellt. Erlaubt es der Editor beim
Beenden einen EXIT-Code zu übergeben (z.B. Tempus), kann direkt die
Bearbeitung gestartet werden:
EXIT-Code Bearbeitung
----------------------------------------------------------------
0 keine
1 compilieren
2 compilieren, linken
3 compilieren, linken, starten des erzeugten Programms
Treten bei der Bearbeitung Fehler auf, wird der Editor mit dem Quelltext
aufgerufen, der für den Fehler verantwortlich sein müßte. Dabei werden
(natürlich) die eingestellten `Shell-Optionen' berücksichtigt.
Automatische Compilierung
-------------------------
Bei der Bearbeitung geben Sie ein Ziel an, z.B. ein bestimmtes Modul
soll übersetzt werden, oder eine Programmdatei soll (vom Linker) neu
erzeugt werden.
Wenn die Abhängigkeiten der Module bestimmt wurden (Datei DEPEND.M2B
existiert im Arbeitsverzeichnis) werden alle ungültigen Dateien, die benötigt
werden um das angegebene Ziel zu erreichen, neu übersetzt. Ausgehend vom Ziel
der Bearbeitung werden alle Dateien, von denen das Ziel abhängt, überprüft
und wenn nötig neu übersetzt.
Fehlende Dateien (SYM oder LNK) werden neu erzeugt.
BEISPIELE
Sie haben (nur!) die Quelltexte eines Programms erhalten, das aus mehreren
Modulen besteht und wollen ein Programm erzeugen.
- kopieren sie ALLE Quelltexte in einen Ordner
- starten Sie M2D2
- setzen Sie das Arbeitsverzeichnis auf den Ordner mit den Quelltexten
Es werden die .DEF und .MOD Dateien angezeigt.
- Wählen Sie im Menü Abhängigkeiten den Eintrag bestimmen .
Die Abhängigkeiten der Module im Arbeitsverzeichnis werden bestimmt und
in einer Datei DEPEND.M2B gespeichert.
- Klicken Sie einmal in das Feld, in dem die Programmdatei angezeigt werden
müßte (das Feld ist leer, noch existiert kein Programm).
Ziel der Bearbeitung ist jetzt die Erstellung eines gültigen Programms. Um
das Ziel zu erreichen werden alle Quelltexte in der richtigen Reihenfolge
übersetzt, und danach der Linker aufgerufen.
Sie bearbeiten ein Programm, das aus mehreren Modulen besteht. Sie haben
den ein Moduls geändert und wollen das Programm testen.
- Wenn sich die Abhängigkeiten der Module verändert haben könnten, wählen Sie im
Menü Abhängigkeiten den Eintrag bestimmen .
Alle ungültigen Dateien (SYM, LNK, PRG) werden `grau' Dargestellt
- Klicken Sie einmal in das Feld PRG . Alle ungültigen Dateien werden neu
übersetzt und das Programm gelinkt.
Ausdrucken von Quelltexten
==========================
Ziehen Sie das Feld zu der gewünschten Datei (DEF,MOD,ERD,ERM) auf das
Drucker-Icon. Das Feld am linken Rand mit dem Modulnamen steht für ALLE
druckbaren Dateien des Moduls.
Druckoptionen
-------------
Beim Programmstart wird von M2D2 die Druckeranpassung DRUCKER.PR1 geladen.
Erstzen Sie diese Datei durch die Anpassung für Ihren Drucker (aber unter
demselben Namen!).
Mit einem Doppelklick auf das Drucker-Icon können Sie eine beliebige
Druckeranpassung im PR1 - Format laden.
Die anderen Optionen werden in einem Extradialog eingestellt
(Menü: Parameter, Eintrag: Drucker... ).
Im oberen Teil wird die Bezeichnung des Druckers ausgegeben, für den eine
Anpassung geladen ist.
Darunter können verschiedene Parameter der Schriftgröße eingestellt werden:
PICA Basisgröße 10 Zeichen pro Inch
ELITE Basisgröße 12 Zeichen pro Inch
MICRO Halbe Zeichenhöhe (schaltet auch SCHMAL an)
SCHMAL Die Zeichen werden schmaler dargestellt, abhängig von der
gewählten Basisgröße.
(N)LQ Schönschrift, wenn angewählt.
Die folgenden Werte verändern sich je nach eingestellter Schriftgröße.
Im Bereich links darunter werden die Papierbreite, Ränder links/rechts
und die Anzahl der Druckspalten angegeben.
Im Bereich rechts daneben werden die Längenparameter angegeben. Zuerst
wieviele Zeilen Maximal gedruck werden können. Danach werden von oben nach
unten die Höhen der einzelnen Bereiche angegeben:
Rand oben Rand oberhalb der Kopfzeile
Rand für Kopfzeile Platz für die Kopfzeile und evtl. Rand darunter,
(0: keine Kopfzeile, 1: nur Kopfzeile, 2: Kopf- und
eine Leerzeile darunter, ... )
Textzeilen/Seite wird aus den Angaben errechnet
Rand für Fußzeile Platz für die Fußzeile und evtl. Rand darüber
Rand unten Rand unterhalb der Fußzeile
Max.Leerzeilen gibt an, wieviele Leerzeilen Maximal im Ausdruck auf-
einanderfolgen dürfen. Stehen im Text mehr Leerzeilen
hintereinander, werden die überzähligen nicht
gedruckt.
Das Options-Accessory
=====================
Das neue M2OPTION bietet alle Möglichkeiten des alten. Die Bedienungselemente
sind in einer Dialogbox zusammengefasst, es benötigt weniger Hauptspeicher
und arbeitet mit M2D2 zusammen (s. Bedienung des M2D2-Desktop, Einstellen des
Arbeitspfades.
Die Voreinstellungen werden (wie beim alten) aus der Datei M2PATHS.TXT
gelesen. Diese Datei kann direkt übernommen werden.
Alle uns bekannten Versionen von TDI-Modula2 arbeiten mit diesen Accessory
zusammen, ältere Versionen unterstützen jedoch nicht alle Zugriffspfade (nur
vier statt sechs).
--ANHANG--
==========
Die Datei M2D2.INF
==================
Hier ein Beispiel für eine Options-Datei M2D2.INF:
----------------- CUT HERE ----------------------------------
Datei-Extender
#X DEF, MOD, SYM, LNK, PRG, ERD, ERM
Editor
#E C:\BIN\TEMPUS.PRG
Compiler
#c D:\BIN\TDI\MODULA.PRG
Linker
#l D:\BIN\TDI\LINKER.PRG
Debugger
#D D:\TDI\BIN\DEBUG.PRG
RCS
#R D:\TDI\BIN\NRSC.PRG
Kommando-Interpreter
#M C:\MINISHEL.TOS
Flags :
#F AutoEdit EditError1 GoOnAfterError
Druck-Parameter
#P DRUCKER.PR1 1 6 0 2 130 0 0 1 158 0 3 2
----------------- CUT HERE ----------------------------------
Alle Zeilen, die NICHT mit einem # (Doppelkreuz) beginnen, werden
ignoriert, stehen also für beliebige Kommentare zur verfügung.
Ansonsten legt das dem # folgende Zeichen fest, welcher Parameter
gesetzt wird:
X Dateiendungen und Kürzel für:
Definitionsteil, Implementationsteil,
übersetzten Definitionsteil, übersetzen Implementationsteil,
Programmdatei,
Fehlerliste für Definitionsteil, Fehlerliste für Implementationsteil.
Im Beispiel sind die Einstellungen für TDI-Modula2/ST eingetragen.
Diese Einstelleungen sind die einzigen, die NUR mit einem Texteditor
in der INF Datei geändert werden können. Alle anderen werden in den
Optionsdialogen von M2D2 eingestellt.
Beim Speichern der Optionen werden diese Einstellungen so geschrieben,
wie sie zuletzt gelesen wurden.
E Programmname und Pfad des Editors ! Großbuchstabe: OHNE Korrektur
C Programmname und Pfad des Compilers ! des TDI-Parameterfehlers,
L Programmname und Pfad des Linkers ! Kleinbuchstabe: MIT
D Programmname und Pfad des Debuggers
R Programmname und Pfad des Resource-Construction-Sets
M Programmname und Pfad des Kommando-Interpreters
F Flags AutoEdit EditError GoOnAfterError und EditError1
(gesetzt wenn vorhanden)
P Drucker-Parameter (etwas undurchsichtig, verwenden Sie den Options-
dialog)
Tastaturbedienung
=================
Taste Funktion
F1 der Editor wird gestartet
F2 der Compiler wird gestartet
F3 der Linker wird gestartet
F4 der Resource-Editor wird gestartet
F5 der Debugger wird gestartet
F6 der Kommande-Interpreter wird gestartet
F7 die Abhängigkeiten werden bestimmt
F8 nicht-aktuelle Dateien werden neu erzeugt
F9 das M2-Options-Accessory wird aufgerufen
F10 ein Programm kann ausgewählt und gestartet werden
A bis Z das erste Modul dessen Name mit diesem
Buchstaben beginnt wird in das Fenster gerollt
[ctrl]C
[ctrl]Q
[ctrl]X M2D2 beenden
[ctrl]N neues Modul erzeugen
[ctrl]O die Shell-Parameter können eingestellt werden
[ctrl]D Drucker-Parameter können eingestellt werden
[ctrl]P einen neue Drucker-Anpassung kann geladen werden
[Help] Hilfe-Box mit der Tastaturbelegung von M2D2
^ v (Pfeiltasten!) Fenster zeilenweise auf und ab rollen
Zusätzlich shift gedrückt: Seitenweise rollen.
[ESC] Pfad und Module des Arbeitsfensters neu bestimmen
+++